package com.pignest.hotel.dao;

import java.util.List;

import com.pignest.framework.dao.Dao;
import com.pignest.hotel.beans.Room;
import com.pignest.hotel.beans.RoomType;
import com.pignest.hotel.definition.RoomLiveStatus;

public interface RoomDao extends Dao {

	public List<Room> listRooms(RoomType... roomTypes);
	
	public List<Room> listRooms(RoomLiveStatus liveStatus, RoomType... roomTypes);
	
	public boolean hasRooms(String... roomTypes);
	
	/**
	 * @deprecated 使用  {@link #getRoomByName(String)}.getType();
	 */
	public String getRoomTypeByName(String  name);
	
	/** 通过房间名获取房间 */
	public Room getRoomByName(String name);
	
	/** 通过房间名获取锁号*/
	public String getRoomLockByName(String roomName);
	
	/** 获取可自助房间, 仅空房 */
	public List<Room> listSelfHelpRooms(String roomTypeId);
	
	/**
	 * 获取可预订的房间, 仅空房
	 * */
	public List<Room> listBookingRooms();
}
